package cn.com.headfree.base.listener;

import cn.com.headfree.base.initData.InitData;
import org.apache.logging.log4j.LogManager;
import org.springframework.web.context.WebApplicationContext;
import org.springframework.web.context.support.WebApplicationContextUtils;

import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import javax.servlet.annotation.WebListener;

@WebListener
public class InitContextDataListener implements ServletContextListener {
	// 启动运行日志
	/** log */
	private static final org.apache.logging.log4j.Logger log = LogManager.getLogger(InitContextDataListener.class);
	public void contextDestroyed(ServletContextEvent context) {
		// 停止所有定时任务
//		LOG.info("****************************************************");
//		LOG.info("系统停止，停止定时任务！");
//		if (TimeTaskManager.isStarted()) {
//			TimeTaskManager.getScheduler().isShutdown();
//			TimeTaskManager.getScheduler().clear();
//			LOG.info("停止定时任务成功！");
//		}
//		LOG.info("****************************************************");
	}

	public void contextInitialized(ServletContextEvent context) {
		WebApplicationContext app = WebApplicationContextUtils.getWebApplicationContext(context.getServletContext());
		log.info("***********************开始初始化数据*****************************");
		InitData.getInstance().initData(app);
		log.info("***********************初始化数据完成*****************************");
//		String fileAccessPath = JedisClusterUtil.get(InitLoadDataType.FILE_ACCESS_PATH.getValue());
//		if (StringUtil.isNullOrEmpty(fileAccessPath)) {
//			log.error("初始化文件服务器配置信息失败，请检查文件服务器中的配置信息是否已经加载！");
//			System.exit(1);
//		}
//		log.info("***************************************获得文件服务器的路径成功********************************************");
//		context.getServletContext().setAttribute("fileAccessPath", fileAccessPath);
//		// 初始化缓存数据
//		InitCacheData.getInstance().initData();
////		// 启动mina服务器
////		MinaServer.getInstance().startServer();
	}
}
